package com.bjxst;

import org.apache.commons.io.FileUtils;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;

/**第三方IO包  Apache软件基金会，是专门为支持开源软件项目而办的一个非盈利性组织，
 * 网址:www.apache.org
 * Apache IOUtils和 File类库为我们提供了更加简单，功能更加强大的文件操作和IO流操
 * 作功能，非常值得学习和使用*/
/*Commons IO 的下载地址：https://commons.apache.org/proper/commons-io/download_io.cgi*/
/*FileUtils的api文档中我们一些常用的方法：
* cleanDirectory:清空目录，但不删除目录   contentEquals:比较两个文件的内容是否相同
* copyDirectory：将一个目录内容拷贝到另一个目录，可以通过FileFilter 过滤需要拷贝的文件。
* copyFile:将一个文件拷贝到一个新的地址。
* copyFileToDirectory：将一个文件拷贝到某个目录下
* copyInputStreamToFile:将一个输入流中的内容拷贝到某个文件
* deleteDirectory:删除目录     deleteQuietly:删除文件
* listFiles:列出指定目录下的所有文件。
* openInputStream:打开指定文件的输入流
* readFileToString : 将文件内容作为字符串返回
* readLines:将文件内容按行返回到一个字符串数组中
* size：返回文件或目录大小     write:将字符串内容直接写到文件中
* writeByteArrayToFile：将字节数组内容写到文件中
* writeLines: 将容器中的元素的toString方法返回的内容依次写入文件中
* writeStringToFile： 将字符串内容写到文件中*/
public class ApacheIO {
    public static void main(String[] args) throws Exception{
        //InputStreamReader 字节转字符中，也可以指定编格式
       // new InputStreamReader(new FileInputStream("d:/b.txt"),"utf-8");
        //FileUtils.readFileToString  返回一个字符串
       String content = FileUtils.readFileToString(new File("d:/b.txt"),"utf-8");
        System.out.println(content);
    }
}
